package com.opal.model.easyui;

import java.util.ArrayList;
import java.util.List;

public class EasyuiDatagridColumnExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public EasyuiDatagridColumnExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(String value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(String value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(String value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(String value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(String value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(String value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLike(String value) {
            addCriterion("id like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotLike(String value) {
            addCriterion("id not like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<String> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<String> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(String value1, String value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(String value1, String value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andTitleIsNull() {
            addCriterion("title is null");
            return (Criteria) this;
        }

        public Criteria andTitleIsNotNull() {
            addCriterion("title is not null");
            return (Criteria) this;
        }

        public Criteria andTitleEqualTo(String value) {
            addCriterion("title =", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleNotEqualTo(String value) {
            addCriterion("title <>", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleGreaterThan(String value) {
            addCriterion("title >", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleGreaterThanOrEqualTo(String value) {
            addCriterion("title >=", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleLessThan(String value) {
            addCriterion("title <", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleLessThanOrEqualTo(String value) {
            addCriterion("title <=", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleLike(String value) {
            addCriterion("title like", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleNotLike(String value) {
            addCriterion("title not like", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleIn(List<String> values) {
            addCriterion("title in", values, "title");
            return (Criteria) this;
        }

        public Criteria andTitleNotIn(List<String> values) {
            addCriterion("title not in", values, "title");
            return (Criteria) this;
        }

        public Criteria andTitleBetween(String value1, String value2) {
            addCriterion("title between", value1, value2, "title");
            return (Criteria) this;
        }

        public Criteria andTitleNotBetween(String value1, String value2) {
            addCriterion("title not between", value1, value2, "title");
            return (Criteria) this;
        }

        public Criteria andFieldIsNull() {
            addCriterion("field is null");
            return (Criteria) this;
        }

        public Criteria andFieldIsNotNull() {
            addCriterion("field is not null");
            return (Criteria) this;
        }

        public Criteria andFieldEqualTo(String value) {
            addCriterion("field =", value, "field");
            return (Criteria) this;
        }

        public Criteria andFieldNotEqualTo(String value) {
            addCriterion("field <>", value, "field");
            return (Criteria) this;
        }

        public Criteria andFieldGreaterThan(String value) {
            addCriterion("field >", value, "field");
            return (Criteria) this;
        }

        public Criteria andFieldGreaterThanOrEqualTo(String value) {
            addCriterion("field >=", value, "field");
            return (Criteria) this;
        }

        public Criteria andFieldLessThan(String value) {
            addCriterion("field <", value, "field");
            return (Criteria) this;
        }

        public Criteria andFieldLessThanOrEqualTo(String value) {
            addCriterion("field <=", value, "field");
            return (Criteria) this;
        }

        public Criteria andFieldLike(String value) {
            addCriterion("field like", value, "field");
            return (Criteria) this;
        }

        public Criteria andFieldNotLike(String value) {
            addCriterion("field not like", value, "field");
            return (Criteria) this;
        }

        public Criteria andFieldIn(List<String> values) {
            addCriterion("field in", values, "field");
            return (Criteria) this;
        }

        public Criteria andFieldNotIn(List<String> values) {
            addCriterion("field not in", values, "field");
            return (Criteria) this;
        }

        public Criteria andFieldBetween(String value1, String value2) {
            addCriterion("field between", value1, value2, "field");
            return (Criteria) this;
        }

        public Criteria andFieldNotBetween(String value1, String value2) {
            addCriterion("field not between", value1, value2, "field");
            return (Criteria) this;
        }

        public Criteria andWidthIsNull() {
            addCriterion("width is null");
            return (Criteria) this;
        }

        public Criteria andWidthIsNotNull() {
            addCriterion("width is not null");
            return (Criteria) this;
        }

        public Criteria andWidthEqualTo(String value) {
            addCriterion("width =", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthNotEqualTo(String value) {
            addCriterion("width <>", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthGreaterThan(String value) {
            addCriterion("width >", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthGreaterThanOrEqualTo(String value) {
            addCriterion("width >=", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthLessThan(String value) {
            addCriterion("width <", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthLessThanOrEqualTo(String value) {
            addCriterion("width <=", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthLike(String value) {
            addCriterion("width like", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthNotLike(String value) {
            addCriterion("width not like", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthIn(List<String> values) {
            addCriterion("width in", values, "width");
            return (Criteria) this;
        }

        public Criteria andWidthNotIn(List<String> values) {
            addCriterion("width not in", values, "width");
            return (Criteria) this;
        }

        public Criteria andWidthBetween(String value1, String value2) {
            addCriterion("width between", value1, value2, "width");
            return (Criteria) this;
        }

        public Criteria andWidthNotBetween(String value1, String value2) {
            addCriterion("width not between", value1, value2, "width");
            return (Criteria) this;
        }

        public Criteria andRowspanIsNull() {
            addCriterion("rowspan is null");
            return (Criteria) this;
        }

        public Criteria andRowspanIsNotNull() {
            addCriterion("rowspan is not null");
            return (Criteria) this;
        }

        public Criteria andRowspanEqualTo(Integer value) {
            addCriterion("rowspan =", value, "rowspan");
            return (Criteria) this;
        }

        public Criteria andRowspanNotEqualTo(Integer value) {
            addCriterion("rowspan <>", value, "rowspan");
            return (Criteria) this;
        }

        public Criteria andRowspanGreaterThan(Integer value) {
            addCriterion("rowspan >", value, "rowspan");
            return (Criteria) this;
        }

        public Criteria andRowspanGreaterThanOrEqualTo(Integer value) {
            addCriterion("rowspan >=", value, "rowspan");
            return (Criteria) this;
        }

        public Criteria andRowspanLessThan(Integer value) {
            addCriterion("rowspan <", value, "rowspan");
            return (Criteria) this;
        }

        public Criteria andRowspanLessThanOrEqualTo(Integer value) {
            addCriterion("rowspan <=", value, "rowspan");
            return (Criteria) this;
        }

        public Criteria andRowspanIn(List<Integer> values) {
            addCriterion("rowspan in", values, "rowspan");
            return (Criteria) this;
        }

        public Criteria andRowspanNotIn(List<Integer> values) {
            addCriterion("rowspan not in", values, "rowspan");
            return (Criteria) this;
        }

        public Criteria andRowspanBetween(Integer value1, Integer value2) {
            addCriterion("rowspan between", value1, value2, "rowspan");
            return (Criteria) this;
        }

        public Criteria andRowspanNotBetween(Integer value1, Integer value2) {
            addCriterion("rowspan not between", value1, value2, "rowspan");
            return (Criteria) this;
        }

        public Criteria andColspanIsNull() {
            addCriterion("colspan is null");
            return (Criteria) this;
        }

        public Criteria andColspanIsNotNull() {
            addCriterion("colspan is not null");
            return (Criteria) this;
        }

        public Criteria andColspanEqualTo(Integer value) {
            addCriterion("colspan =", value, "colspan");
            return (Criteria) this;
        }

        public Criteria andColspanNotEqualTo(Integer value) {
            addCriterion("colspan <>", value, "colspan");
            return (Criteria) this;
        }

        public Criteria andColspanGreaterThan(Integer value) {
            addCriterion("colspan >", value, "colspan");
            return (Criteria) this;
        }

        public Criteria andColspanGreaterThanOrEqualTo(Integer value) {
            addCriterion("colspan >=", value, "colspan");
            return (Criteria) this;
        }

        public Criteria andColspanLessThan(Integer value) {
            addCriterion("colspan <", value, "colspan");
            return (Criteria) this;
        }

        public Criteria andColspanLessThanOrEqualTo(Integer value) {
            addCriterion("colspan <=", value, "colspan");
            return (Criteria) this;
        }

        public Criteria andColspanIn(List<Integer> values) {
            addCriterion("colspan in", values, "colspan");
            return (Criteria) this;
        }

        public Criteria andColspanNotIn(List<Integer> values) {
            addCriterion("colspan not in", values, "colspan");
            return (Criteria) this;
        }

        public Criteria andColspanBetween(Integer value1, Integer value2) {
            addCriterion("colspan between", value1, value2, "colspan");
            return (Criteria) this;
        }

        public Criteria andColspanNotBetween(Integer value1, Integer value2) {
            addCriterion("colspan not between", value1, value2, "colspan");
            return (Criteria) this;
        }

        public Criteria andAlignIsNull() {
            addCriterion("align is null");
            return (Criteria) this;
        }

        public Criteria andAlignIsNotNull() {
            addCriterion("align is not null");
            return (Criteria) this;
        }

        public Criteria andAlignEqualTo(String value) {
            addCriterion("align =", value, "align");
            return (Criteria) this;
        }

        public Criteria andAlignNotEqualTo(String value) {
            addCriterion("align <>", value, "align");
            return (Criteria) this;
        }

        public Criteria andAlignGreaterThan(String value) {
            addCriterion("align >", value, "align");
            return (Criteria) this;
        }

        public Criteria andAlignGreaterThanOrEqualTo(String value) {
            addCriterion("align >=", value, "align");
            return (Criteria) this;
        }

        public Criteria andAlignLessThan(String value) {
            addCriterion("align <", value, "align");
            return (Criteria) this;
        }

        public Criteria andAlignLessThanOrEqualTo(String value) {
            addCriterion("align <=", value, "align");
            return (Criteria) this;
        }

        public Criteria andAlignLike(String value) {
            addCriterion("align like", value, "align");
            return (Criteria) this;
        }

        public Criteria andAlignNotLike(String value) {
            addCriterion("align not like", value, "align");
            return (Criteria) this;
        }

        public Criteria andAlignIn(List<String> values) {
            addCriterion("align in", values, "align");
            return (Criteria) this;
        }

        public Criteria andAlignNotIn(List<String> values) {
            addCriterion("align not in", values, "align");
            return (Criteria) this;
        }

        public Criteria andAlignBetween(String value1, String value2) {
            addCriterion("align between", value1, value2, "align");
            return (Criteria) this;
        }

        public Criteria andAlignNotBetween(String value1, String value2) {
            addCriterion("align not between", value1, value2, "align");
            return (Criteria) this;
        }

        public Criteria andHalignIsNull() {
            addCriterion("halign is null");
            return (Criteria) this;
        }

        public Criteria andHalignIsNotNull() {
            addCriterion("halign is not null");
            return (Criteria) this;
        }

        public Criteria andHalignEqualTo(String value) {
            addCriterion("halign =", value, "halign");
            return (Criteria) this;
        }

        public Criteria andHalignNotEqualTo(String value) {
            addCriterion("halign <>", value, "halign");
            return (Criteria) this;
        }

        public Criteria andHalignGreaterThan(String value) {
            addCriterion("halign >", value, "halign");
            return (Criteria) this;
        }

        public Criteria andHalignGreaterThanOrEqualTo(String value) {
            addCriterion("halign >=", value, "halign");
            return (Criteria) this;
        }

        public Criteria andHalignLessThan(String value) {
            addCriterion("halign <", value, "halign");
            return (Criteria) this;
        }

        public Criteria andHalignLessThanOrEqualTo(String value) {
            addCriterion("halign <=", value, "halign");
            return (Criteria) this;
        }

        public Criteria andHalignLike(String value) {
            addCriterion("halign like", value, "halign");
            return (Criteria) this;
        }

        public Criteria andHalignNotLike(String value) {
            addCriterion("halign not like", value, "halign");
            return (Criteria) this;
        }

        public Criteria andHalignIn(List<String> values) {
            addCriterion("halign in", values, "halign");
            return (Criteria) this;
        }

        public Criteria andHalignNotIn(List<String> values) {
            addCriterion("halign not in", values, "halign");
            return (Criteria) this;
        }

        public Criteria andHalignBetween(String value1, String value2) {
            addCriterion("halign between", value1, value2, "halign");
            return (Criteria) this;
        }

        public Criteria andHalignNotBetween(String value1, String value2) {
            addCriterion("halign not between", value1, value2, "halign");
            return (Criteria) this;
        }

        public Criteria andSortableIsNull() {
            addCriterion("sortable is null");
            return (Criteria) this;
        }

        public Criteria andSortableIsNotNull() {
            addCriterion("sortable is not null");
            return (Criteria) this;
        }

        public Criteria andSortableEqualTo(String value) {
            addCriterion("sortable =", value, "sortable");
            return (Criteria) this;
        }

        public Criteria andSortableNotEqualTo(String value) {
            addCriterion("sortable <>", value, "sortable");
            return (Criteria) this;
        }

        public Criteria andSortableGreaterThan(String value) {
            addCriterion("sortable >", value, "sortable");
            return (Criteria) this;
        }

        public Criteria andSortableGreaterThanOrEqualTo(String value) {
            addCriterion("sortable >=", value, "sortable");
            return (Criteria) this;
        }

        public Criteria andSortableLessThan(String value) {
            addCriterion("sortable <", value, "sortable");
            return (Criteria) this;
        }

        public Criteria andSortableLessThanOrEqualTo(String value) {
            addCriterion("sortable <=", value, "sortable");
            return (Criteria) this;
        }

        public Criteria andSortableLike(String value) {
            addCriterion("sortable like", value, "sortable");
            return (Criteria) this;
        }

        public Criteria andSortableNotLike(String value) {
            addCriterion("sortable not like", value, "sortable");
            return (Criteria) this;
        }

        public Criteria andSortableIn(List<String> values) {
            addCriterion("sortable in", values, "sortable");
            return (Criteria) this;
        }

        public Criteria andSortableNotIn(List<String> values) {
            addCriterion("sortable not in", values, "sortable");
            return (Criteria) this;
        }

        public Criteria andSortableBetween(String value1, String value2) {
            addCriterion("sortable between", value1, value2, "sortable");
            return (Criteria) this;
        }

        public Criteria andSortableNotBetween(String value1, String value2) {
            addCriterion("sortable not between", value1, value2, "sortable");
            return (Criteria) this;
        }

        public Criteria andOrderIsNull() {
            addCriterion("order is null");
            return (Criteria) this;
        }

        public Criteria andOrderIsNotNull() {
            addCriterion("order is not null");
            return (Criteria) this;
        }

        public Criteria andOrderEqualTo(String value) {
            addCriterion("order =", value, "order");
            return (Criteria) this;
        }

        public Criteria andOrderNotEqualTo(String value) {
            addCriterion("order <>", value, "order");
            return (Criteria) this;
        }

        public Criteria andOrderGreaterThan(String value) {
            addCriterion("order >", value, "order");
            return (Criteria) this;
        }

        public Criteria andOrderGreaterThanOrEqualTo(String value) {
            addCriterion("order >=", value, "order");
            return (Criteria) this;
        }

        public Criteria andOrderLessThan(String value) {
            addCriterion("order <", value, "order");
            return (Criteria) this;
        }

        public Criteria andOrderLessThanOrEqualTo(String value) {
            addCriterion("order <=", value, "order");
            return (Criteria) this;
        }

        public Criteria andOrderLike(String value) {
            addCriterion("order like", value, "order");
            return (Criteria) this;
        }

        public Criteria andOrderNotLike(String value) {
            addCriterion("order not like", value, "order");
            return (Criteria) this;
        }

        public Criteria andOrderIn(List<String> values) {
            addCriterion("order in", values, "order");
            return (Criteria) this;
        }

        public Criteria andOrderNotIn(List<String> values) {
            addCriterion("order not in", values, "order");
            return (Criteria) this;
        }

        public Criteria andOrderBetween(String value1, String value2) {
            addCriterion("order between", value1, value2, "order");
            return (Criteria) this;
        }

        public Criteria andOrderNotBetween(String value1, String value2) {
            addCriterion("order not between", value1, value2, "order");
            return (Criteria) this;
        }

        public Criteria andResizableIsNull() {
            addCriterion("resizable is null");
            return (Criteria) this;
        }

        public Criteria andResizableIsNotNull() {
            addCriterion("resizable is not null");
            return (Criteria) this;
        }

        public Criteria andResizableEqualTo(String value) {
            addCriterion("resizable =", value, "resizable");
            return (Criteria) this;
        }

        public Criteria andResizableNotEqualTo(String value) {
            addCriterion("resizable <>", value, "resizable");
            return (Criteria) this;
        }

        public Criteria andResizableGreaterThan(String value) {
            addCriterion("resizable >", value, "resizable");
            return (Criteria) this;
        }

        public Criteria andResizableGreaterThanOrEqualTo(String value) {
            addCriterion("resizable >=", value, "resizable");
            return (Criteria) this;
        }

        public Criteria andResizableLessThan(String value) {
            addCriterion("resizable <", value, "resizable");
            return (Criteria) this;
        }

        public Criteria andResizableLessThanOrEqualTo(String value) {
            addCriterion("resizable <=", value, "resizable");
            return (Criteria) this;
        }

        public Criteria andResizableLike(String value) {
            addCriterion("resizable like", value, "resizable");
            return (Criteria) this;
        }

        public Criteria andResizableNotLike(String value) {
            addCriterion("resizable not like", value, "resizable");
            return (Criteria) this;
        }

        public Criteria andResizableIn(List<String> values) {
            addCriterion("resizable in", values, "resizable");
            return (Criteria) this;
        }

        public Criteria andResizableNotIn(List<String> values) {
            addCriterion("resizable not in", values, "resizable");
            return (Criteria) this;
        }

        public Criteria andResizableBetween(String value1, String value2) {
            addCriterion("resizable between", value1, value2, "resizable");
            return (Criteria) this;
        }

        public Criteria andResizableNotBetween(String value1, String value2) {
            addCriterion("resizable not between", value1, value2, "resizable");
            return (Criteria) this;
        }

        public Criteria andFixedIsNull() {
            addCriterion("fixed is null");
            return (Criteria) this;
        }

        public Criteria andFixedIsNotNull() {
            addCriterion("fixed is not null");
            return (Criteria) this;
        }

        public Criteria andFixedEqualTo(String value) {
            addCriterion("fixed =", value, "fixed");
            return (Criteria) this;
        }

        public Criteria andFixedNotEqualTo(String value) {
            addCriterion("fixed <>", value, "fixed");
            return (Criteria) this;
        }

        public Criteria andFixedGreaterThan(String value) {
            addCriterion("fixed >", value, "fixed");
            return (Criteria) this;
        }

        public Criteria andFixedGreaterThanOrEqualTo(String value) {
            addCriterion("fixed >=", value, "fixed");
            return (Criteria) this;
        }

        public Criteria andFixedLessThan(String value) {
            addCriterion("fixed <", value, "fixed");
            return (Criteria) this;
        }

        public Criteria andFixedLessThanOrEqualTo(String value) {
            addCriterion("fixed <=", value, "fixed");
            return (Criteria) this;
        }

        public Criteria andFixedLike(String value) {
            addCriterion("fixed like", value, "fixed");
            return (Criteria) this;
        }

        public Criteria andFixedNotLike(String value) {
            addCriterion("fixed not like", value, "fixed");
            return (Criteria) this;
        }

        public Criteria andFixedIn(List<String> values) {
            addCriterion("fixed in", values, "fixed");
            return (Criteria) this;
        }

        public Criteria andFixedNotIn(List<String> values) {
            addCriterion("fixed not in", values, "fixed");
            return (Criteria) this;
        }

        public Criteria andFixedBetween(String value1, String value2) {
            addCriterion("fixed between", value1, value2, "fixed");
            return (Criteria) this;
        }

        public Criteria andFixedNotBetween(String value1, String value2) {
            addCriterion("fixed not between", value1, value2, "fixed");
            return (Criteria) this;
        }

        public Criteria andHiddenIsNull() {
            addCriterion("hidden is null");
            return (Criteria) this;
        }

        public Criteria andHiddenIsNotNull() {
            addCriterion("hidden is not null");
            return (Criteria) this;
        }

        public Criteria andHiddenEqualTo(String value) {
            addCriterion("hidden =", value, "hidden");
            return (Criteria) this;
        }

        public Criteria andHiddenNotEqualTo(String value) {
            addCriterion("hidden <>", value, "hidden");
            return (Criteria) this;
        }

        public Criteria andHiddenGreaterThan(String value) {
            addCriterion("hidden >", value, "hidden");
            return (Criteria) this;
        }

        public Criteria andHiddenGreaterThanOrEqualTo(String value) {
            addCriterion("hidden >=", value, "hidden");
            return (Criteria) this;
        }

        public Criteria andHiddenLessThan(String value) {
            addCriterion("hidden <", value, "hidden");
            return (Criteria) this;
        }

        public Criteria andHiddenLessThanOrEqualTo(String value) {
            addCriterion("hidden <=", value, "hidden");
            return (Criteria) this;
        }

        public Criteria andHiddenLike(String value) {
            addCriterion("hidden like", value, "hidden");
            return (Criteria) this;
        }

        public Criteria andHiddenNotLike(String value) {
            addCriterion("hidden not like", value, "hidden");
            return (Criteria) this;
        }

        public Criteria andHiddenIn(List<String> values) {
            addCriterion("hidden in", values, "hidden");
            return (Criteria) this;
        }

        public Criteria andHiddenNotIn(List<String> values) {
            addCriterion("hidden not in", values, "hidden");
            return (Criteria) this;
        }

        public Criteria andHiddenBetween(String value1, String value2) {
            addCriterion("hidden between", value1, value2, "hidden");
            return (Criteria) this;
        }

        public Criteria andHiddenNotBetween(String value1, String value2) {
            addCriterion("hidden not between", value1, value2, "hidden");
            return (Criteria) this;
        }

        public Criteria andCheckboxIsNull() {
            addCriterion("checkbox is null");
            return (Criteria) this;
        }

        public Criteria andCheckboxIsNotNull() {
            addCriterion("checkbox is not null");
            return (Criteria) this;
        }

        public Criteria andCheckboxEqualTo(String value) {
            addCriterion("checkbox =", value, "checkbox");
            return (Criteria) this;
        }

        public Criteria andCheckboxNotEqualTo(String value) {
            addCriterion("checkbox <>", value, "checkbox");
            return (Criteria) this;
        }

        public Criteria andCheckboxGreaterThan(String value) {
            addCriterion("checkbox >", value, "checkbox");
            return (Criteria) this;
        }

        public Criteria andCheckboxGreaterThanOrEqualTo(String value) {
            addCriterion("checkbox >=", value, "checkbox");
            return (Criteria) this;
        }

        public Criteria andCheckboxLessThan(String value) {
            addCriterion("checkbox <", value, "checkbox");
            return (Criteria) this;
        }

        public Criteria andCheckboxLessThanOrEqualTo(String value) {
            addCriterion("checkbox <=", value, "checkbox");
            return (Criteria) this;
        }

        public Criteria andCheckboxLike(String value) {
            addCriterion("checkbox like", value, "checkbox");
            return (Criteria) this;
        }

        public Criteria andCheckboxNotLike(String value) {
            addCriterion("checkbox not like", value, "checkbox");
            return (Criteria) this;
        }

        public Criteria andCheckboxIn(List<String> values) {
            addCriterion("checkbox in", values, "checkbox");
            return (Criteria) this;
        }

        public Criteria andCheckboxNotIn(List<String> values) {
            addCriterion("checkbox not in", values, "checkbox");
            return (Criteria) this;
        }

        public Criteria andCheckboxBetween(String value1, String value2) {
            addCriterion("checkbox between", value1, value2, "checkbox");
            return (Criteria) this;
        }

        public Criteria andCheckboxNotBetween(String value1, String value2) {
            addCriterion("checkbox not between", value1, value2, "checkbox");
            return (Criteria) this;
        }

        public Criteria andFormatterIsNull() {
            addCriterion("formatter is null");
            return (Criteria) this;
        }

        public Criteria andFormatterIsNotNull() {
            addCriterion("formatter is not null");
            return (Criteria) this;
        }

        public Criteria andFormatterEqualTo(String value) {
            addCriterion("formatter =", value, "formatter");
            return (Criteria) this;
        }

        public Criteria andFormatterNotEqualTo(String value) {
            addCriterion("formatter <>", value, "formatter");
            return (Criteria) this;
        }

        public Criteria andFormatterGreaterThan(String value) {
            addCriterion("formatter >", value, "formatter");
            return (Criteria) this;
        }

        public Criteria andFormatterGreaterThanOrEqualTo(String value) {
            addCriterion("formatter >=", value, "formatter");
            return (Criteria) this;
        }

        public Criteria andFormatterLessThan(String value) {
            addCriterion("formatter <", value, "formatter");
            return (Criteria) this;
        }

        public Criteria andFormatterLessThanOrEqualTo(String value) {
            addCriterion("formatter <=", value, "formatter");
            return (Criteria) this;
        }

        public Criteria andFormatterLike(String value) {
            addCriterion("formatter like", value, "formatter");
            return (Criteria) this;
        }

        public Criteria andFormatterNotLike(String value) {
            addCriterion("formatter not like", value, "formatter");
            return (Criteria) this;
        }

        public Criteria andFormatterIn(List<String> values) {
            addCriterion("formatter in", values, "formatter");
            return (Criteria) this;
        }

        public Criteria andFormatterNotIn(List<String> values) {
            addCriterion("formatter not in", values, "formatter");
            return (Criteria) this;
        }

        public Criteria andFormatterBetween(String value1, String value2) {
            addCriterion("formatter between", value1, value2, "formatter");
            return (Criteria) this;
        }

        public Criteria andFormatterNotBetween(String value1, String value2) {
            addCriterion("formatter not between", value1, value2, "formatter");
            return (Criteria) this;
        }

        public Criteria andStylerIsNull() {
            addCriterion("styler is null");
            return (Criteria) this;
        }

        public Criteria andStylerIsNotNull() {
            addCriterion("styler is not null");
            return (Criteria) this;
        }

        public Criteria andStylerEqualTo(String value) {
            addCriterion("styler =", value, "styler");
            return (Criteria) this;
        }

        public Criteria andStylerNotEqualTo(String value) {
            addCriterion("styler <>", value, "styler");
            return (Criteria) this;
        }

        public Criteria andStylerGreaterThan(String value) {
            addCriterion("styler >", value, "styler");
            return (Criteria) this;
        }

        public Criteria andStylerGreaterThanOrEqualTo(String value) {
            addCriterion("styler >=", value, "styler");
            return (Criteria) this;
        }

        public Criteria andStylerLessThan(String value) {
            addCriterion("styler <", value, "styler");
            return (Criteria) this;
        }

        public Criteria andStylerLessThanOrEqualTo(String value) {
            addCriterion("styler <=", value, "styler");
            return (Criteria) this;
        }

        public Criteria andStylerLike(String value) {
            addCriterion("styler like", value, "styler");
            return (Criteria) this;
        }

        public Criteria andStylerNotLike(String value) {
            addCriterion("styler not like", value, "styler");
            return (Criteria) this;
        }

        public Criteria andStylerIn(List<String> values) {
            addCriterion("styler in", values, "styler");
            return (Criteria) this;
        }

        public Criteria andStylerNotIn(List<String> values) {
            addCriterion("styler not in", values, "styler");
            return (Criteria) this;
        }

        public Criteria andStylerBetween(String value1, String value2) {
            addCriterion("styler between", value1, value2, "styler");
            return (Criteria) this;
        }

        public Criteria andStylerNotBetween(String value1, String value2) {
            addCriterion("styler not between", value1, value2, "styler");
            return (Criteria) this;
        }

        public Criteria andSorterIsNull() {
            addCriterion("sorter is null");
            return (Criteria) this;
        }

        public Criteria andSorterIsNotNull() {
            addCriterion("sorter is not null");
            return (Criteria) this;
        }

        public Criteria andSorterEqualTo(String value) {
            addCriterion("sorter =", value, "sorter");
            return (Criteria) this;
        }

        public Criteria andSorterNotEqualTo(String value) {
            addCriterion("sorter <>", value, "sorter");
            return (Criteria) this;
        }

        public Criteria andSorterGreaterThan(String value) {
            addCriterion("sorter >", value, "sorter");
            return (Criteria) this;
        }

        public Criteria andSorterGreaterThanOrEqualTo(String value) {
            addCriterion("sorter >=", value, "sorter");
            return (Criteria) this;
        }

        public Criteria andSorterLessThan(String value) {
            addCriterion("sorter <", value, "sorter");
            return (Criteria) this;
        }

        public Criteria andSorterLessThanOrEqualTo(String value) {
            addCriterion("sorter <=", value, "sorter");
            return (Criteria) this;
        }

        public Criteria andSorterLike(String value) {
            addCriterion("sorter like", value, "sorter");
            return (Criteria) this;
        }

        public Criteria andSorterNotLike(String value) {
            addCriterion("sorter not like", value, "sorter");
            return (Criteria) this;
        }

        public Criteria andSorterIn(List<String> values) {
            addCriterion("sorter in", values, "sorter");
            return (Criteria) this;
        }

        public Criteria andSorterNotIn(List<String> values) {
            addCriterion("sorter not in", values, "sorter");
            return (Criteria) this;
        }

        public Criteria andSorterBetween(String value1, String value2) {
            addCriterion("sorter between", value1, value2, "sorter");
            return (Criteria) this;
        }

        public Criteria andSorterNotBetween(String value1, String value2) {
            addCriterion("sorter not between", value1, value2, "sorter");
            return (Criteria) this;
        }

        public Criteria andEditorTypeIsNull() {
            addCriterion("editor_type is null");
            return (Criteria) this;
        }

        public Criteria andEditorTypeIsNotNull() {
            addCriterion("editor_type is not null");
            return (Criteria) this;
        }

        public Criteria andEditorTypeEqualTo(String value) {
            addCriterion("editor_type =", value, "editorType");
            return (Criteria) this;
        }

        public Criteria andEditorTypeNotEqualTo(String value) {
            addCriterion("editor_type <>", value, "editorType");
            return (Criteria) this;
        }

        public Criteria andEditorTypeGreaterThan(String value) {
            addCriterion("editor_type >", value, "editorType");
            return (Criteria) this;
        }

        public Criteria andEditorTypeGreaterThanOrEqualTo(String value) {
            addCriterion("editor_type >=", value, "editorType");
            return (Criteria) this;
        }

        public Criteria andEditorTypeLessThan(String value) {
            addCriterion("editor_type <", value, "editorType");
            return (Criteria) this;
        }

        public Criteria andEditorTypeLessThanOrEqualTo(String value) {
            addCriterion("editor_type <=", value, "editorType");
            return (Criteria) this;
        }

        public Criteria andEditorTypeLike(String value) {
            addCriterion("editor_type like", value, "editorType");
            return (Criteria) this;
        }

        public Criteria andEditorTypeNotLike(String value) {
            addCriterion("editor_type not like", value, "editorType");
            return (Criteria) this;
        }

        public Criteria andEditorTypeIn(List<String> values) {
            addCriterion("editor_type in", values, "editorType");
            return (Criteria) this;
        }

        public Criteria andEditorTypeNotIn(List<String> values) {
            addCriterion("editor_type not in", values, "editorType");
            return (Criteria) this;
        }

        public Criteria andEditorTypeBetween(String value1, String value2) {
            addCriterion("editor_type between", value1, value2, "editorType");
            return (Criteria) this;
        }

        public Criteria andEditorTypeNotBetween(String value1, String value2) {
            addCriterion("editor_type not between", value1, value2, "editorType");
            return (Criteria) this;
        }

        public Criteria andEditorOptionsOnchangeIsNull() {
            addCriterion("editor_options_onchange is null");
            return (Criteria) this;
        }

        public Criteria andEditorOptionsOnchangeIsNotNull() {
            addCriterion("editor_options_onchange is not null");
            return (Criteria) this;
        }

        public Criteria andEditorOptionsOnchangeEqualTo(String value) {
            addCriterion("editor_options_onchange =", value, "editorOptionsOnchange");
            return (Criteria) this;
        }

        public Criteria andEditorOptionsOnchangeNotEqualTo(String value) {
            addCriterion("editor_options_onchange <>", value, "editorOptionsOnchange");
            return (Criteria) this;
        }

        public Criteria andEditorOptionsOnchangeGreaterThan(String value) {
            addCriterion("editor_options_onchange >", value, "editorOptionsOnchange");
            return (Criteria) this;
        }

        public Criteria andEditorOptionsOnchangeGreaterThanOrEqualTo(String value) {
            addCriterion("editor_options_onchange >=", value, "editorOptionsOnchange");
            return (Criteria) this;
        }

        public Criteria andEditorOptionsOnchangeLessThan(String value) {
            addCriterion("editor_options_onchange <", value, "editorOptionsOnchange");
            return (Criteria) this;
        }

        public Criteria andEditorOptionsOnchangeLessThanOrEqualTo(String value) {
            addCriterion("editor_options_onchange <=", value, "editorOptionsOnchange");
            return (Criteria) this;
        }

        public Criteria andEditorOptionsOnchangeLike(String value) {
            addCriterion("editor_options_onchange like", value, "editorOptionsOnchange");
            return (Criteria) this;
        }

        public Criteria andEditorOptionsOnchangeNotLike(String value) {
            addCriterion("editor_options_onchange not like", value, "editorOptionsOnchange");
            return (Criteria) this;
        }

        public Criteria andEditorOptionsOnchangeIn(List<String> values) {
            addCriterion("editor_options_onchange in", values, "editorOptionsOnchange");
            return (Criteria) this;
        }

        public Criteria andEditorOptionsOnchangeNotIn(List<String> values) {
            addCriterion("editor_options_onchange not in", values, "editorOptionsOnchange");
            return (Criteria) this;
        }

        public Criteria andEditorOptionsOnchangeBetween(String value1, String value2) {
            addCriterion("editor_options_onchange between", value1, value2, "editorOptionsOnchange");
            return (Criteria) this;
        }

        public Criteria andEditorOptionsOnchangeNotBetween(String value1, String value2) {
            addCriterion("editor_options_onchange not between", value1, value2, "editorOptionsOnchange");
            return (Criteria) this;
        }

        public Criteria andTypeNameIsNull() {
            addCriterion("type_name is null");
            return (Criteria) this;
        }

        public Criteria andTypeNameIsNotNull() {
            addCriterion("type_name is not null");
            return (Criteria) this;
        }

        public Criteria andTypeNameEqualTo(String value) {
            addCriterion("type_name =", value, "typeName");
            return (Criteria) this;
        }

        public Criteria andTypeNameNotEqualTo(String value) {
            addCriterion("type_name <>", value, "typeName");
            return (Criteria) this;
        }

        public Criteria andTypeNameGreaterThan(String value) {
            addCriterion("type_name >", value, "typeName");
            return (Criteria) this;
        }

        public Criteria andTypeNameGreaterThanOrEqualTo(String value) {
            addCriterion("type_name >=", value, "typeName");
            return (Criteria) this;
        }

        public Criteria andTypeNameLessThan(String value) {
            addCriterion("type_name <", value, "typeName");
            return (Criteria) this;
        }

        public Criteria andTypeNameLessThanOrEqualTo(String value) {
            addCriterion("type_name <=", value, "typeName");
            return (Criteria) this;
        }

        public Criteria andTypeNameLike(String value) {
            addCriterion("type_name like", value, "typeName");
            return (Criteria) this;
        }

        public Criteria andTypeNameNotLike(String value) {
            addCriterion("type_name not like", value, "typeName");
            return (Criteria) this;
        }

        public Criteria andTypeNameIn(List<String> values) {
            addCriterion("type_name in", values, "typeName");
            return (Criteria) this;
        }

        public Criteria andTypeNameNotIn(List<String> values) {
            addCriterion("type_name not in", values, "typeName");
            return (Criteria) this;
        }

        public Criteria andTypeNameBetween(String value1, String value2) {
            addCriterion("type_name between", value1, value2, "typeName");
            return (Criteria) this;
        }

        public Criteria andTypeNameNotBetween(String value1, String value2) {
            addCriterion("type_name not between", value1, value2, "typeName");
            return (Criteria) this;
        }

        public Criteria andFieldSortIsNull() {
            addCriterion("field_sort is null");
            return (Criteria) this;
        }

        public Criteria andFieldSortIsNotNull() {
            addCriterion("field_sort is not null");
            return (Criteria) this;
        }

        public Criteria andFieldSortEqualTo(Integer value) {
            addCriterion("field_sort =", value, "fieldSort");
            return (Criteria) this;
        }

        public Criteria andFieldSortNotEqualTo(Integer value) {
            addCriterion("field_sort <>", value, "fieldSort");
            return (Criteria) this;
        }

        public Criteria andFieldSortGreaterThan(Integer value) {
            addCriterion("field_sort >", value, "fieldSort");
            return (Criteria) this;
        }

        public Criteria andFieldSortGreaterThanOrEqualTo(Integer value) {
            addCriterion("field_sort >=", value, "fieldSort");
            return (Criteria) this;
        }

        public Criteria andFieldSortLessThan(Integer value) {
            addCriterion("field_sort <", value, "fieldSort");
            return (Criteria) this;
        }

        public Criteria andFieldSortLessThanOrEqualTo(Integer value) {
            addCriterion("field_sort <=", value, "fieldSort");
            return (Criteria) this;
        }

        public Criteria andFieldSortIn(List<Integer> values) {
            addCriterion("field_sort in", values, "fieldSort");
            return (Criteria) this;
        }

        public Criteria andFieldSortNotIn(List<Integer> values) {
            addCriterion("field_sort not in", values, "fieldSort");
            return (Criteria) this;
        }

        public Criteria andFieldSortBetween(Integer value1, Integer value2) {
            addCriterion("field_sort between", value1, value2, "fieldSort");
            return (Criteria) this;
        }

        public Criteria andFieldSortNotBetween(Integer value1, Integer value2) {
            addCriterion("field_sort not between", value1, value2, "fieldSort");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}